#!/bin/bash

# 显示使用方法
show_usage() {
    echo "用法: $0 <发行版> <目标目录>"
    echo "发行版选项:"
    echo "  master              - AGIRos master分支代码"
    echo "  openEuler2403lts    - openEuler 2403 LTS版本代码"
    echo "  ubuntu2204lts       - Ubuntu 22.04 LTS版本代码"
    echo "  partial_ubuntu2403  - Ubuntu 2403部分更新包"
    echo "  partial_openEuler2403lts - openEuler 2403 LTS部分更新包"
    echo "示例:"
    echo "  $0 master /path/to/target"
    exit 1
}

# 检查命令行参数
if [ $# -ne 2 ]; then
    show_usage
fi

# 获取参数
DISTRO=$1
TARGET_DIR=$2

# 检查目标目录
if [ ! -d "$TARGET_DIR" ]; then
    echo "创建目标目录: $TARGET_DIR"
    mkdir -p "$TARGET_DIR"
fi

# 检查vcs命令是否可用
if ! command -v vcs &> /dev/null; then
    echo "错误: 未找到vcs命令。请先安装vcstool工具。"
    echo "可以使用以下命令安装："
    echo "pip install vcstool"
    exit 1
fi

# 根据发行版选择对应的配置文件
case $DISTRO in
    "master")
        CONFIG_FILE="repos_master.yaml"
        ;;
    "openEuler2403lts")
        CONFIG_FILE="repos_openEuler2403lts.yaml"
        ;;
    "ubuntu2204lts")
        CONFIG_FILE="repos_ubuntu2204lts.yaml"
        ;;
    "partial_ubuntu2403")
        CONFIG_FILE="repos_partial_ubuntu2403.yaml"
        ;;
    "partial_openEuler2403lts")
        CONFIG_FILE="repos_partial_openEuler2403lts.yaml"
        ;;
    *)
        echo "错误: 不支持的发行版: $DISTRO"
        show_usage
        ;;
esac

# 检查配置文件是否存在
if [ ! -f "$CONFIG_FILE" ]; then
    echo "错误: 配置文件不存在: $CONFIG_FILE"
    exit 1
fi

# 执行导入
echo "开始导入 $DISTRO 代码到 $TARGET_DIR"
if vcs import "$TARGET_DIR" < "$CONFIG_FILE"; then
    echo "导入完成！"
else
    echo "错误: 导入失败"
    exit 1
fi




# # 下载master分支代码
# ./download_git_source.sh master /path/to/target

# # 下载openEuler 2403 LTS版本代码
# ./download_git_source.sh openEuler2403lts /path/to/target